/* * GPLv3 */ package Bricklink.org.kleini.bricklink.api.Catalog; import java.util.LinkedList; import java.util.List; import Bricklink.org.kleini.bricklink.api.HttpRequestT; import Bricklink.org.kleini.bricklink.api.Parameter; import Bricklink.org.kleini.bricklink.api.Request; import Bricklink.org.kleini.bricklink.data.ColorDT; import Bricklink.org.kleini.bricklink.data.ItemType; /** * {@link SubsetsRequest} * * @author <a href="mailto:himself@kleini.org">Marcus Klein</a> */ public final class SubsetsRequest implements Request<SubsetsResponse> { private final ItemType type; private final String itemID; private final ColorDT color; public SubsetsRequest(ItemType type, String itemID, ColorDT color) { super(); this.type = type; this.itemID = itemID; this.color = color; } public SubsetsRequest(ItemType type, String itemID) { this(type, itemID, null); } @Override public String getPath() { return "items/" + type.getLongId() + '/' + itemID + "/subsets"; } @Override public Parameter[] getParameters() { List<Parameter> retval = new LinkedList<Parameter>(); if (null != color) { retval.add(new Parameter("color_id", color.getIdentifier())); } retval.add(new Parameter("box", true)); retval.add(new Parameter("instruction", true)); retval.add(new Parameter("break_minifigs", true)); retval.add(new Parameter("break_subsets", true)); return retval.toArray(new Parameter[retval.size()]); } @Override public SubsetsParser getParser() { return new SubsetsParser(); } @Override public HttpRequestT getRequestType() { // TODO Auto-generated method stub return HttpRequestT.GET; } }